package com.tianquan.miracle.proxy;

/**
 * @author tianquan
 * @date 2024-10-09 下午8:40
 * @description 方法调用接口，用于定义方法调用操作。主要用于动态代理机制或面向切面编程（AOP），允许访问执行方法的代理对象。
 */
public interface MethodInvocation {

    /**
     * 获取执行当前方法的代理对象。
     * 该方法允许直接在代理对象上进行操作，或访问代理对象的状态。
     *
     * @return 返回代理对象。
     * @throws Throwable 可能抛出任何类型的异常，因为方法调用过程中可能会遇到各种异常。
     */
    Object getProxy() throws Throwable;

}

